<?php
// Entry Points
class EntryPoints {
	const COURSES = "/courses";
	const ROOMS = "/rooms";
	const BOOKINGS = "/bookings";
	const USERS = "/users";
	const NOTIFICATIONS = "/notifications";
	const API = "/api";
}

class EntryPointsKeys {
	const COURSES_SERVICE = "CoursesService";
	const ROOMS_SERVICE = "RoomsService";
	const BOOKINGS_SERVICE = "BookingsService";
	const NOTIFICATIONS_SERVICE = "NotificationService";
	const USER_SERVICE = "UserService";
}	

// User Type Enum
class UserType {
	const SECRETARY = 2;
	const TEACHER = 1;
	const REGULAR = -1;
}

// Filter "enum"
class Filter {
	const COURSE_NAME = "name";
	const COURSE_CODE = "code";
	const COURSE_TEACHER = "teacher";	
}

// Type Of Class "enum"
class TypeOfClass {
	const COURSE = 1;
	const SEMINAR = 2;
	const LABORATORY = 3; 
	const EXAMEN = 4;
	const CONSULTATII = 5;
	const RECUPERARE = 6;
    const OTHER = 7;
}

// JOSN Tags
class JSON_Tags {
	// User Tags
	const TOKEN = "Token";
	const USER_EMAIL = "Email";
	const USER_PASSWORD = "Password";
	const USER_TYPE = "UserType";
	
	// Courses
	const COURSE_CODE = "CourseCode";
	const COURSE_NAME = "CourseName";
	const COURSE_URL = "CourseURI";
	const COURSE_BOOKINGS_URL = "BookingsURI";
	const COURSE_AVAILABLE_ROOMS = "CourseAvailableRoomsURI";
	
	
	// Faculty
    const FACULTY = "Faculty";
    const FACULTY_ID = "FacultyId";
	const FACULTY_NAME = "FacultyName";
	const FACULTY_URL = "FacultyURI";
	
	// Teachers
	const TEACHERS = "Teachers";
	const TEACHER_ID = "TeacherId";
	const TEACHER_FIRST_NAME = "TeacherFirstName";
	const TEACHER_LAST_NAME = "TeacherLastName";
	const TEACHER_POSITION = "TeacherPosition";
	const TEACHER_EMAIL = "TeacherEmail";
	const TEACHER_PHONE = "TeacherPhone";
	const TEACHER_URL = "TeacherURI";
	
	// Study Groups
	const STUDY_GROUPS = "StudyGroups";
	const STUDY_GROUP_ID = "StudyGroupId";
	const STUDY_GROUP_NAME = "StudyGroupName";
	const STUDY_GROUP_YEAR = "StudyGroupYear";
	
	// Types Of Classes
	const TYPES_OF_CLASSES = "TypesOfClasses";
	const TYPE_OF_CLASS_NAME = "TypeOfClass";
	const TYPE_OF_CLASS_ID = "TypeOfClassId";
	
	// Rooms
	const ROOM_ID = "RoomId";
	const ROOM_NAME = "RoomName";
	const ROOM_HAS_PROJECTOR = "HasProjector";
	const ROOM_NUMBER_OF_PLACES = "NumberOfPlaces";
	const ROOM_BOOKINGS_URL = "BookingsURI";
	
	// Building
	const BUILDING = "Building";
	const BUILDING_ID = "BuildingId";
	const BUILDING_NAME = "BuildingName";
	const BUILDING_STREET = "BuildingStreet";
	const BUILDING_ZIPCODE = "BuildingZipCode";
	const BUILDING_CITY = "BuildingCity";
	const BUILDING_LATITUDE ="BuildingLatitude";
	const BUILDING_LONGITUDE = "BuildingLongitude";
	
	// Self URL
	const SELF_URL = "Self_URI";
	
	// Bookings
	const BOOKING = "Booking";
	const BOOKING_ID = "BookingId";
	const BOOKING_START_DATE = "BookingStartDate";
	const BOOKING_END_DATE = "BookingEndDate";
	const BOOKING_TEACHER = "BookingTeacher";
	const BOOKING_COURSE = "BookingCourse";
	const BOOKING_ROOM = "BookingRoom";
	const BOOKING_TYPE_OF_CLASS = "BookingTypeOfClass";
	const BOOKING_STUDY_GROUPS = "BookingStudyGroups";
    
    const ITEMS = "Items";
    const TOTAL_ITEMS = "TotalItems";
	
	const DEVICE_ID = "DeviceId";
	const ID = "Id";
    
}

// Status Codes
class StatusCodes {
	const STATUS_CODE_SUCCESS = 200;
	const STATUS_CODE_CREATED = 201;
	const STATUS_CODE_NO_CONTENT = 204;
	const STATUS_CODE_BAD_REQUEST = 400;
	const STATUS_CODE_NOT_FOUND = 404;
	const STATUS_CODE_FORBIDDEN = 403;
	const STATUS_CODE_UNAUTHORIZED = 401;
	const STATUS_CODE_CONFLICT = 409;	
	const STATUS_CODE_SERVER_ERROR = 500;
}



define('MESSAGE', 'Message');
define('PROTOCOL', 'http://');

?>